package org.smart4j.chapter4.service;

import org.chapter2.helper.DatabaseHelper;
import org.chapter2.model.Customer;
import org.smart4j.framework.annotation.Service;
import org.smart4j.framework.annotation.Transaction;

import java.util.List;
import java.util.Map;

/**
 * Created by james on 16/2/6.
 * 提供客户数据服务
 */
@Service
public class CustomerService {
    /*
    * 获取客户列表
    * */
    public List<Customer> getCustomerList(){
        String sql = "select * from customer";
        return DatabaseHelper.queryEntityList(Customer.class,sql);
    }

    /*
    * 获取客户
    * */
    public Customer getCustomer(long id){
        String sql = "select * from customer where id=?";
        return DatabaseHelper.queryEntity(Customer.class,sql,id);
    }

    /*
    * 创建客户
    * */
    @Transaction
    public boolean createCustomer(Map<String,Object> fieldMap){
        return DatabaseHelper.insertEntity(Customer.class,fieldMap);
    }

    /*
    * 更新客户
    * */
    @Transaction
    public boolean updateCustomer(long id,Map<String,Object> fieldMap){
        return DatabaseHelper.updateEntity(Customer.class,id,fieldMap);
    }

    /*
    * 删除客户
    * */
    @Transaction
    public boolean deleteCustomer(long id){
        return DatabaseHelper.deleteEntity(Customer.class,id);
    }
}
